
/* 1.引入文件 */
import axios from 'axios'        //引入 axios库

/* 2.全局默认配置 */
let baseURL = 'http://127.0.0.1:3000'
// 判断开发环境（一般用于本地代理）
if (process.env.NODE_ENV === 'development') { // 开发环境
    baseURL = '/api'    // 你设置的本地代理请求（跨域代理），下文会详细介绍怎么进行跨域代理
} else {                                      // 编译环境
    if (process.env.type === 'test') {        // 测试环境
        baseURL = 'http://127.0.0.1:3000'
    } else {                                  // 正式环境
        baseURL = 'http://127.0.0.1:3000'
    }
}
// 配置axios的属性
// axios.defaults.timeout = 6000;    // 请求超时时间1分钟                  
// axios.defaults.baseURL = baseURL; // 接口地址 
// axios.defaults.responseType = "json";
// axios.defaults.withCredentials = false;  //是否允许带cookie这些

// 创建 axios 实例
const Axios = axios.create({
    baseURL: baseURL, 		      // 后台服务地址
    timeout: 60000, 		      // 请求超时时间1分钟
    responseType: "json",
    withCredentials: false    // 是否允许带cookie这些
});

/* 3.设置拦截器 */
Axios.interceptors.request.use((config) => {
    //发送请求前进行拦截
    //  可在此处配置请求头信息
    const requestToken = localStorage.getItem('token'); // 获取我们存储的 token
    config.headers['Authorization'] = 'Bearer ' + requestToken; // 将 token 放到 header 里面

    return config;
}, (error) => {
    //console.log("错误的传参", 'fail');
    return Promise.reject(error)
})
Axios.interceptors.response.use((res) => {
    //请求响应后拦截
    if (res.status == 200) {                       // 对响应数据做些事
        //alert("提交成功")
        return Promise.resolve(res)
    }
    return res;
}, (error) => {

    //alert("网络异常!") 404等问题可以在这里处理
    return Promise.reject(error)
})

export default Axios